package com.ambow.shop.service;

import com.ambow.shop.domain.Product;
import com.ambow.shop.util.Page;

/**
 * 产品业务模型接口。
 * 
 * @author chunw
 *
 */
public interface ProductService {
	/**
	 * 增加给定产品。
	 * 
	 * @param product 产品；
	 * @return 是否成功；
	 */
	public boolean addProduct(Product product);

	/**
	 * 删除给定产品标识对应的产品。
	 * 
	 * @param productId 产品标识；
	 * @return 是否成功；
	 */
	public boolean deleteProduct(Integer productId);

	/**
	 * 更新给定产品。
	 * 
	 * @param product 产品；
	 * @return 是否成功；
	 */
	public boolean updateProduct(Product product);

	/**
	 * 获取给定产品标识对应的产品。
	 * 
	 * @param id 产品标识；
	 * @return 产品；
	 */
	public Product getProduct(Integer id);

	/**
	 * 获取指定页码的产品数据。
	 * 
	 * @param currentPage 页码；
	 * @param pageSize    容量；
	 * @return 产品数据；
	 */
	Page<Product> findProducts(int currentPage, int pageSize);

}